Learning Objectives

After completing this lesson, you’ll be able to:

Instructions

In this lesson, you will:

Types of User Parameters

There are many types of user parameters and many ways to use them.

User parameter types

The most common parameter types are:

Text User Parameters

Text parameters are a simple way to accept plain text values into a workspace.

When adding a Text parameter, you can choose the Editor Syntax to control what values are accepted and, optionally, add syntax highlighting if code is expected. The default option is Plain Text. Choose the option that best matches your expected input to the workspace.

Editor Syntax options

The Text parameter also provides an option to Trim Whitespace. When enabled, the parameter will remove any leading or trailing white space. To remove other unwanted elements, such as commas or other standard delimiters, use a StringReplacer or similar transformer to edit the value supplied by the user parameter before using it in the workspace.

There is no limitation on the characters that can be entered.

Note

⭐ New for FME 2026.1: The User Parameter Manager now supports Regex, SQL, XQuery, and GQuery, with Plain Text consolidated into a single option. You get the full editing experience you're already familiar with—including Regex validation against a test string and database table previews in the SQL Text editor when supplied with a database connection.

New text syntax options

Want to learn more about this feature? Watch our short demo video here.

Number User Parameters

The Number parameter type has settings that allow you to define whether it is a float or integer.

Here, for example, the workspace author is creating an integer parameter. They set the Numeric Precision to Integer.

Requiring an integer for a Number user parameter

The user cannot enter a floating-point (non-integer) number when prompted for a value. Because this is a number field, FME also prevents the user from entering text (alphabetic) characters.

This is an excellent example of how FME parses input to ensure it matches the parameter type, as shown in the following screenshots:

Showing number validation

The Upper/Lower Limit settings for a numeric parameter also allow FME to parse the input to ensure it matches what is required:

Configuring limits for number validation

Choice User Parameters

A Choice parameter presents the user with a fixed list of options. Different choice type parameters allow the user to pick from a list, pick multiple entries from a list, or type in text as an alternative to a list.

Here, the user will be asked to enter their name. However, since the names of all users are already known – presumably, this is for a particular company’s staff – a list of them is created:

Creating a Choice parameter

That way, the user is prompted to select their name from a list. They don’t have to type it in manually:

Selecting from a Choice user parameter

Notice that the Choices table has both a Value and a Display column. This section is a lookup table that maps the chosen entry to a value provided to FME.

For example, this workspace matches incoming records to a database using an EmployeeID.

DatabaseJoiner

The end user provides EmployeeID, but they can’t always remember their ID number. So, the author creates a Choice user parameter but uses different values for the Value and Display columns.

The parameter is configured like so:

Using Value and Display with different values

When a user selects their name from the list, the value provided to the workspace is their employee ID. That way, the employee ID can be used as a match in the DatabaseJoiner without the end-user remembering it!

If you would like the end-user to be able to select multiple values, choose the List or Tree options under Choice Configuration.

The List option is configured similarly to Dropdown:

Choices for multiple selections

But it provides checkboxes instead of a single selection:

Checklist

Tree creates a nested list. You use a delimiter in the Display value to indicate nesting; it's a period by default. For example, this configuration:

Tree configuration

is presented to the user like this:

Tree display

For both List and Tree, you can optionally Allow Multiple Selection.

These let the end user select multiple values by default. For example, if a manager wanted to run reports on several employees, they could use this. Multiple values are returned space-delimited by default, but you can change the delimiter using the Choice List and Tree Node Delimiter parameters.

Note

Suppose you'd like to offer the user a selection of reader formats, writer formats, or coordinate systems. In that case, we recommend using the Import button on the Choice parameter. This lets you choose the ones you want and automatically fills in the FME-required string under Value and a human-readable label under Display. It's much better than doing it yourself!